﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using PraxisRent.Entities;

namespace PraxisRent.Repository
{
    public interface IEquipoRepository
    {
        List<EQUIPO> GetAllFromEquipo();
        List<EQUIPO> GetALlFromEquipoByTipoMaquinaria();
        List<EQUIPO> GetALlFromEquipoByTipoEquipo();
        List<EQUIPO> GetALlFromEquipoByTipoMaquinariaDisponibles();
        List<EQUIPO> GetALlFromEquipoByTipoEquipoDisponibles();
        List<EQUIPO> GetALlFromEquipoByDisponibilidad();
        List<EQUIPO> GetAllFromEquipoByCriterio(string criterio);
        List<EQUIPO> GetAllFromEquipoOfMaquinariasDisponibles(string criterio);
        List<EQUIPO> GetAllFromEquipoOfEquiposDisponibles(string criterio);
        List<EQUIPO> GetAllFromEquipoTipoMaquinariaByCriterio(string criterio);
        List<EQUIPO> GetAllFromEquipoTipoEquipoByCriterio(string criterio);
        List<EQUIPO> GetAllFromEquipoByCriterioDisponibles(string criterio);
        EQUIPO GetAllFRomEquipoById(Int32 id);

        bool ExisteDuplicidad(string criterio, Int32 id);

        void AddEquipo(EQUIPO equipo);
        void UpdateEquipo(EQUIPO equipo);
        void DeleteEquipo(Int32 id);
    }
}
